Funkcja GETSUBSTR() przeznaczona jest do zaznaczenia części tekstu według podanego separatora.
Kod funkcji GETSUBSTR dzieli tekst na tablicę przy użyciu określonego separatora i zwraca element danej tablicy zgodnie z podanym numerem seryjnym.
Poniżej znajduje się kod makra umożliwiający utworzenie niestandardowej funkcji GETSUBSTR, która może podzielić tekst na części i pobrać dowolny jego element w programie LibreOffice Calc.
Aby dodać nową funkcję należy otworzyć menu Tools - Macros - Edit Macros..., wybrać Module1 i skopiować następujący tekst do modułu:
Function GETSUBSTR(Txt, Delimiter, n) As String
Dim txtArray As Variant
If Txt = "" Then Exit Function
txtArray = Split(Txt, Delimiter)
maxExt = UBound(txtArray)
If n >= 0 Then
normExt = n - 1
Else
normExt = maxExt + n + 1
EndIf
extToFind = Max(Min(maxExt, normExt), 0)
GETSUBSTR = txtArray(extToFind)
End Function
Następnie zamknij Macro Editor, wróć do LibreOffice Calc i użyj nowej funkcji w dowolnej komórce.
Możesz także skorzystać z tej funkcji GETSUBSTR() instalując darmowe rozszerzenie YouLibreCalc.oxt lub jego w pełni funkcjonalna wersja YLC_Utilities.oxt .
Od tego momentu ta funkcja będzie dostępna we wszystkich plikach, które zostaną otwarte w LibreOffice Calc.